class Cartlist{
    constructor(){

    }
    init(){
        let localobj={};
          if(localStorage.getItem('localgoods')){
            localobj=JSON.parse(localStorage.getItem('localgoods'));
          }else{
            localobj={};
          }
          $.ajax({
            url:"http://localhost/my-wangyi/backend/alldata.php"
            ,dataType:"json"
          }).then(function(resData){
            $.each(localobj,function(sid,num){
                $.each(resData,function(key,value){
                    if(value.sid==sid){
                        let clonebox=$(".cart_mod:hidden").clone(true,true);
                        clonebox.find(".midd img").attr('src',value.url);
                        clonebox.find(".midd .midd1_title").html(value.title);
                        clonebox.attr('sid',sid);
                        clonebox.find('.midd1_title2').html('￥'+value.price);
                        clonebox.find('.midd1_title3 input').val(num);
                        clonebox.find('.midd1_title4').html('￥'+value.price * num)

                        clonebox.attr("style","display:block")
                        $(".cart_main").append(clonebox)
                        calc();
                    }
                })
              })


          })
          function calc(){
            let count=0;
            let price=0;
            $(".cart_mod:visible").each(function(){
                if($(this).find(".check_div input").prop('checked')){
                    count+=parseInt($(this).find('.midd1_title3 input').val());
                    price+=parseInt($(this).find('.midd1_title4').html().slice(1));
                    
                }
            })
            $("#yxsp").html(`(${count})`)
            $(".div3 .span2").html("￥"+price)

          }
          //全选改变
          $(".qx").on("click",function(){
            $(".cart_mod:visible").find('input:checkbox').prop("checked",$(this).prop("checked"));
            $(".qx").prop("checked",$(this).prop('checked'));
          })

        
          //商品改变全选
    $('.cart_main').on('click','.check_div input',function(){
        let len1 = $(".cart_mod:visible").find('input:checkbox').length
        let len2 = $(".cart_mod:visible").find('input:checkbox:checked').length
        if(len1 === len2){
          $('.qx').prop('checked',true);
        }else{
          $('.qx').prop('checked',false);
        }
        calc();
      });


          // ++
          $('.cart_main').on('click','.jia',function(){
            let num = $(this).prev().val();
            num++;
            $(this).prev().val(num);
            $(this).parents('.cart_mod').find('.midd1_title4').html(allPrice($(this)))
            storageCount($(this).parents('.cart_mod').attr('sid'),num);
            calc();
          });
          // -- 
          $('.cart_main').on('click','.jian',function(){
            let num = $(this).next().val();
            num--;
            if(num<1){
              $(this).next().val(1);
            }else{
              $(this).next().val(num);
            }
             $(this).parents('.cart_mod').find('.midd1_title4').html(allPrice($(this)))
            storageCount($(this).parents('.cart_mod').attr('sid'),$(this).next().val());
            calc();
             
          });
          // input
          $('.cart_main').on('input','.kaung',function(){
            let reg=/^[1-9]\d*$/;
            if(!reg.test($(this).val())){
              $(this).val(1);
            }else if($(this).val()>99){
              $(this).val(99);
            }
             $(this).parents('.cart_mod').find('.midd1_title4').html(allPrice($(this)))
            storageCount($(this).parents('.cart_mod').attr('sid'),$(this).val());
            calc();
          });
          // 小计
          function allPrice(obj){
            let count = parseInt(obj.parents('.cart_mod').find('.midd1_title3 input').val());//数量
            let single = parseFloat(obj.parents('.cart_mod').find('.midd1_title2').html().substring(1));//单价
            return '￥'+(count * single).toFixed(2);
          }
          // 修改的数量 写入本地存储。
          function storageCount(sid,num){//sid:当前商品的sid  num:当前商品的数量
            let localData = {};
            if(localStorage.getItem('localgoods')){
              localData =JSON.parse(localStorage.getItem('localgoods'));
              localData['localsid'+sid] = num;
              localStorage.setItem('localgoods',JSON.stringify(localData));
            }
          }

      // 删除单个商品
      $('.cart_main').on('click','.midd1_title5',function(){
        if(window.confirm('你确定要删除吗')){
          $(this).parents('.cart_mod').remove();
          delLocalStorage($(this).parents('.cart_mod').attr('sid'))
          calc();
        }
      });
  
      // 删除选中的商品
      $('#pl_delete').on('click',function(){
        if(window.confirm('你确定要删除吗')){
          $('.cart_mod:visible').each(function(index,element){
            if($(element).find('.check_div input').prop('checked')){
              $(element).remove();
              delLocalStorage($(element).attr('sid'))
              calc();
            }
          });
        }
      });
  
      // 封装函数实现删除本地存储
      function delLocalStorage(sid){
        let localData = {};
        if(localStorage.getItem('localgoods')){
          localData =JSON.parse(localStorage.getItem('localgoods'));
          delete localData[sid]
          localStorage.setItem('localgoods',JSON.stringify(localData));
        }
      }

    }
}

export{
    Cartlist
}